From: Giovanni Campagna Date: Tue, 1 Jul 2014 19:47:31 +0000 (+0200) Subject: notificationdaemon: fix gtk protocol for newer glib X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~2362 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=dc94f7b9f539c003a8778f9e26a7e7bda3354af0;p=gnome-shell.git notificationdaemon: fix gtk protocol for newer glib The new protocol uses a "priority" string instead of the "urgent" boolean. --- diff --git a/js/ui/notificationDaemon.js b/js/ui/notificationDaemon.js index dd2566117..f596e8901 100644 --- a/js/ui/notificationDaemon.js +++ b/js/ui/notificationDaemon.js @@ -692,6 +692,12 @@ const FdoNotificationDaemonSource = new Lang.Class({ } }); +const PRIORITY_URGENCY_MAP = { + low: MessageTray.Urgency.LOW, + normal: MessageTray.Urgency.NORMAL, + high: MessageTray.Urgency.HIGH, + urgent: MessageTray.Urgency.CRITICAL +}; const GtkNotificationDaemonNotification = new Lang.Class({ Name: 'GtkNotificationDaemonNotification', @@ -705,12 +711,20 @@ const GtkNotificationDaemonNotification = new Lang.Class({ "body": body, "icon": gicon, "urgent": urgent, + "priority": priority, "buttons": buttons, "default-action": defaultAction, "default-action-target": defaultActionTarget } = notification; - this.setUrgency(urgent.unpack() ? MessageTray.Urgency.CRITICAL - : MessageTray.Urgency.NORMAL); + if (priority) { + let urgency = PRIORITY_URGENCY_MAP[priority.unpack()]; + this.setUrgency(urgency != undefined ? urgency : MessageTray.Urgency.NORMAL); + } else if (urgent) { + this.setUrgency(urgent.unpack() ? MessageTray.Urgency.CRITICAL + : MessageTray.Urgency.NORMAL); + } else { + this.setUrgency(MessageTray.Urgency.NORMAL); + } if (buttons) { buttons.deep_unpack().forEach(Lang.bind(this, function(button) {